Application modification based on feed content

ABSTRACT

A data format provides a mechanism to dynamically change the appearance of an application. During operation, the application obtains streaming feed data for presentation to a user. The feed data may be formatted according to a Really Simple Syndication (RSS) data format. The application detects, within the feed data, branding extensions that identify branding content to be displayed concurrently with channel data and content items when a user selects a channel defined by the feed data. The application detects a user selection of the channel defined by the feed data, and in response, references the branding extensions to obtain and display the branding content within a display region of the application that is separate from the content presentation region of the application for display of content items defined within the feed data.

BACKGROUND

Computer networks allow the distribution of information between manynumbers of computer systems. Various computer program applications (i.e.software) and data communications protocols support a wide variety ofdifferent types of data communications and information exchange. As anexample, a computer user using a web browser software application thatoperates on a local computer system can communicate using a hypertexttransport protocol with remote computer systems known as web serversover a computer network such as the Internet to obtain web page contentfor viewing by the user on a local computer system. Other types ofcommunication mechanisms include electronic mail, instant messaging,voice over network communication, and so forth.

One type of communication mechanism that is becoming popular is“syndicated streaming” or “feed” communication that allows a computerprogram known as a streaming feed reader or aggregator to operate on anetworked computer system to peridiocally check a list of syndicatedstream data “feeds” on behalf of a user and display any updated articlesor other content that the application finds within those feeds. Feedreaders or aggregators are able to subscribe to streaming data feedsthat are essentially specially formatted files provided from remotecomputer systems such as web sites or other servers that are of interestto a user operating the aggregator. A set of standardized data formatscollectively known as Really Simple Syndication (RSS) provide a simpleextensible markup language (XML) based system that allows content orfeed providers to identify available “channels” of content items in oneof the RSS formats and allows users to subscribe to their favoritewebsites using the aggregator application. The aggregator is able toread the RSS formatted feed(s) selected by the user to list availablecontent items within each channel (i.e. within each feed) for viewing bythe user. Using RSS, webmasters or other content providers can thus puttheir content items into a standardized RSS data format (an XML formatconforming to standard tags and conventions to list and describe contentitems), which can be accessed, viewed and organized through RSS-awareaggregator software or automatically conveyed as new content on anotherwebsite.

A typical RSS streaming data feed comprises an XML file that defines achannel, and which RSS standardized tags to define a title, link,description, and other optional fields/tags, followed by a series ofcontent items, each of which have a set of tags used to indicate atitle, link, and description of that content item. There can be manysets of content items (i.e. title, link and description tags with otheroptional fields/tags) in a single feed file and the RSS formatted filesconform to one of several different standard RSS XML data formats(examples of which include RSS 1.0, RSS 2.0, Atom 0.3, and Atom 1.0). Itis now common to find RS (examples of which include RSS 1.0, RSS 2.0,Atom 0.3, and Atom 1.0) S web feeds available for access on major orpopular websites as well as on many smaller or less popular ones.RSS-aware aggregator or feed reader programs are available for downloadto various operating systems such as Windows and MacOS. Client-sideRSS-based readers and aggregators are typically constructed asstandalone programs or extensions to existing programs such as webbrowsers and are able to interpret the RSS data format to present thechannels and associated content items for selection by a user forviewing.

Any type of content that can be broken down into discrete content itemscan be syndicated via RSS. As an example, content such as recent changesto a web page such as a weblog, a revision history of a book, or newepisodes of a TV show, new songs available from an artist, or the likecan each be identified and formatted into an RSS feed. Once informationabout each content item is in RSS format, an RSS-aware program such asan aggregator can periodically check one or more feeds for changes andreact to the changes in an appropriate way such as by displaying thenewly available content selections for access by the user. Popularwebsites that are continuously developing new content for viewing by auser utilize RSS streaming data feeds to publish the content for accessby aggregator applications operated by users who are interested inkeeping up with current content available from those sites. A user maysubscribe to many different feeds, each also known as a channel.

A typical aggregator program provides a graphical user interface thatincludes multiple display regions. A channel display region identifiesvarious RSS feeds or “channels” that the user has configured theaggregator to obtain. When a user selects a particular channel in thechannel display region, a content item selection region of the graphicaluser interface displays content items (e.g. as thumbnail icons, lists,or other list-oriented views) available from the channel (i.e., itemsdescribed in the RSS data format for that feed). As an example, if theuser selects a news channel from the channel selection region, theaggregator application will obtain the current RSS feed for that newschannel and will display available content selections such as recent newstories within the content selection region. Each content item can beshown, for example, as a thumbnail or icon or textual line itemrepresenting content available for presentation to the user if the userwere to chose that content item icon. The content item selections for aparticular channel are independently identified within the RSS dataformat. Once the content items for a particular channel are shown forselection by the user, the user may then select a particular contentitem from the content selection region. In response, the aggregator willthen obtain that item of content (e.g., by referencing a URL encodedwithin the RSS data format for that content item) and will play orotherwise reproduce or present that content in a content presentationdisplay region (e.g., a play window) on the graphical user interface ofthe aggregator. Often the content items are videos or multimediapresentations, though they may be simply web pages or static text oraudio. If the user selects a different channel from the channelselection region, the aggregator will read the current feed for thatchannel and change the content items within the content selection regionto show the current content items available for the new channelselection. Again, the user may select a particular content itemassociated with that channel for viewing and the aggregator will accessthat particular content item and play that content in the contentpresentation region.

SUMMARY

Conventional techniques for displaying syndicated feed content forpresentation to a user suffer from a variety of deficiencies. Inparticular, standardized syndication data formats such as RSS do notinclude the ability to add any embedded modification information intothe data format to identify graphical or other modifications that are tobe made to displayed portions of the application that are distinct fromcontent presentation display regions of the application. That is,current versions of RSS do not provide the ability to include brandingextensions that the RSS-aware application can interpret to modify itsgraphical appearance or “application chrome” upon selection of aparticular RSS feed by a user. Thus, conventional RSS-aware applicationssuch as aggregators provide the same look and feel no matter whichchannel is selected by a user and no matter what content item the useris viewing. This is because no extensions to RSS have been developed orprovided that allow branding data to be specified that can beinterpreted by the application to cause the application to change itslook or feel and to become “branded” with a look associated with thechannel or content that is currently selected. As used herein, RSSrefers to any variant of a data format to syndicate and provide contentover a computer network such as the Internet. RSS as used herein thusgenerally includes RSS and RDF data formats promulgated by organizationssuch as Netscape Corporation and UserLand Software, as well asequivalents thereto.

While some applications have promoted RSS extensions to include extrametadata about the content in the RSS feed, such metadata is used in theother ways such as providing additional text content concerning achannel or content items for display in the content selection region ofthe applications user interface. No conventional applications support orprovide a data format that enables a content owner to provide an RSSdata format to brand or cause an application to modify the entireapplication chrome (or a part of the application such as windowappearance, color, control style, skin, etc.) based on the brandingextensions contained within the RSS feed as described and disclosedherein. By application chrome or branding content, was meant in oneexample is content to change the entire look and feel of applicationincluding the color, size and shape of the window, or a skin or styleand surrounding region of the application, as well as the look and feelof various display regions, buttons or other controls within theapplication. A common term of art that is similar to application chromeis an application “skin”. Embodiments disclose herein thus allow dynamicmodification of an RSS-aware application based on branding extensionscontained within RSS streaming data feeds that are specific to that feedor to individual content items identified within that feed.

More specifically, embodiments of the invention provide a renderingapplication such as an aggregator or RSS streaming data feed reader thatoperates to obtain content for presentation to a user. The content maybe, for example, a set of one or more streaming data feeds. Eachstreaming data feed is arranged in a syndicated markup language format(e.g., any RSS XML type format or variant thereof) that identifies achannel and content items available for selection and viewing by a userof the application and that has embedded modification information suchas branding extensions defined and disclosed herein. The applicationdetects, within the content, the embedded modification information thatidentifies graphical modifications to be made to displayed portions ofthe application that are separate from a content presentation region ofthe application. For example, the application can identify the embeddedmodification information as branding extensions within at least onestreaming data feed. Each branding extension for a streaming data feedincludes a branding tag providing an identification of a display region(e.g. background, window, border, title bar, specific display region(s),etc.) of the application to which branding content associated with thatbranding extension is to be applied. Additionally, each brandingextension for a streaming data feed includes a branding contentreference such as a URL to branding content that can be obtained andthen displayed in the identified display region (the region identifiedby the branding tag) of the application in response to the applicationreceiving a selection from the user to view content associated with thatstreaming data feed. As an example, an XML branding tag“backgroundimage” (prefaced by a “branding” namespace identifier) andbranding content URL reference may appear as follows within an RSS dataformat:

<branding:backgroundimageurl=http://www.pictures.com/backgroundpicture.jpg>

The rendering application references the embedded modificationinformation within the content to obtain the graphical modifications(e.g. to obtain the background picture in this example referenced at thespecified URL) to be made to display region(s) of the application thatare separate from the content presentation region of the application. Inother words, the display regions effected by the branding content areregions such as the overall look and feel of application buttons,borders, colors, background, etc. These are display regions of theapplication that content items such as videos or web page content itemsidentified within an RSS streaming data feed would not normally effect.The branding extensions thus trigger application functionality outsideof rendering content items in an RSS data format within the standardcontent presentation area (e.g. within the standard playback window).

The rendering application alters at least one display region of theapplication that is separate from the content display region of theapplication in accordance with the graphical modifications identified bythe embedded modification information within the content. In thismanner, the branding extensions can change the skin or style (i.e., thechrome) of an application itself (or a portion thereof) to reflect abrand or look and feel that a content producer desires to haveassociated with the channel or content items of a channel that a usermay select. Example display regions that the application can modifybased on the branding extensions including, for example, i) anapplication window border display region that surrounds the application(or that surrounds different display regions of the application); ii) achannel presentation display region of the application in which thestreaming data feed may be selected as a channel from a plurality ofstreaming data feeds; iii) a content item selection display region ofthe application that indicates content items associated with a selectedchannel for a streaming data feed that the user may select for viewing;iv) an application control display region that displays controlsoperable to control the application; and/or v) a background imagedisplay region in which the application can display a background imageidentified by the branding content. Other areas can be modified as well,such as application controls, look and feel of pull down menus, and soforth. Additional features of embodiments disclosed herein will bedescribed more fully in the detailed description section.

Other embodiments disclosed herein also include a configuration of oneor more computerized devices, computer systems, workstations, handheldor laptop computers, cell phones, personal digital assistants, or thelike to carry out and/or support any or all of the method operationsdisclosed herein. In other words, one or more of such computerizeddevices can be programmed and/or configured to operate as explainedherein to carry out different embodiments of the invention.

Yet other embodiments herein include software programs to perform thesteps and operations summarized above and disclosed in detail below. Onesuch embodiment comprises a computer program product that has acomputer-readable medium including computer program logic encodedthereon that, when performed in a computerized device having a processorand corresponding memory, provides one or more processes that programthe processor to perform the operations disclosed herein. Sucharrangements are typically provided as software, code and/or other data(e.g., data structures) arranged or encoded on a computer readablemedium such as an optical medium (e.g., CD-ROM), floppy or hard disk orother a medium such as firmware or microcode in one or more ROM or RAMor PROM chips or as an Application Specific Integrated Circuit (ASIC).The software or firmware or other such configurations can be installedonto a computerized device to cause the computerized device to performthe techniques explained herein.

Accordingly, one particular embodiment of the present application isdirected to a computer program product that includes a computer readablemedium having instructions stored thereon for performing operations asexplained herein related to processing branding extensions. Otherembodiments of the present application include software programs toperform any of the method embodiment steps and operations summarizedabove and disclosed in detail below.

As discussed above, techniques herein are well suited for use inproducing and processing branding extensions. However, it should benoted that embodiments herein are not limited to use in suchapplications and that the techniques discussed herein are well suitedfor other applications as well. Note that each of the differentfeatures, techniques, configurations, etc. discussed herein can beexecuted independently or in combination and via a single softwareprocess on in a combination of processes, such as in client/serverconfiguration.

It is to be understood that the system herein can be embodied strictlyas a software program or application, as software and hardware, or ashardware alone such as within a processor, or within an operating systemor a within a software application. Example embodiments of the inventionmay be implemented within products and/or software applications such asthose manufactured by Adobe Systems, Inc. of San Jose, Calif., USA.

Additional features of the embodiments herein will be further discussedin the Detailed Description section of this application and accompanyingfigures and the aforementioned summary is not intended to limit thescope of the invention.

BRIEF DESCRIPTION OF THE DRAWINGS

The foregoing and other objects, features, and advantages of theinvention will be apparent from the following more particulardescription of preferred embodiments herein, as illustrated in theaccompanying drawings in which like reference characters refer to thesame parts throughout the different views. The drawings are notnecessarily to scale, with emphasis instead being placed uponillustrating the embodiments, principles and concepts.

FIG. 1 is a diagram of a computerized device configured with a renderingapplication that operates to process branding extensions according toembodiments disclosed herein.

FIG. 2 is an enlarged view of the graphical user interface of therendering application as shown in FIG. 1.

FIG. 3 is an enlarged view of a resultant graphical user interface ofthe rendering application when a user selects another channel that hasdifferent branding extensions embedded in the data format.

FIGS. 4 through 7 are a flow chart of processing steps that a renderingapplication performs to detect, interpret and process graphicalmodification information such as branding extensions within a streamingdata feed according to example embodiments disclosed herein.

DETAILED DESCRIPTION

Generally, embodiments disclosed herein provide a data format forcontent obtained over a network that provides a mechanism to dynamicallychange the appearance of an application as the user changes contentselections. During operation, the application obtains streaming feeddata for presentation to a user. The feed data may be formattedaccording to a Really Simple Syndication (RSS) data format or a variantthereof. The application detects, within the feed data, brandingextensions that identify branding content to be displayed concurrentlywith channel data and content items when a user selects a channeldefined by the feed data. The application detects a user selection ofthe channel defined by the feed data, or a selection of a content itemwithin a channel, and in response, references the branding extensionsassociated with that channel or that content item to obtain and displaythe branding content within a display region of the application that isseparate from the content presentation region of the application fordisplay of content items defined within the feed data. This allows theappearance, such as the skin or style of the application to change andbe “branded” using branding extensions supplied along with the channeland content item data in the RSS feed.

FIG. 1 is a block diagram illustrating example architecture of acomputer system or computerized device 110 that executes, runs,interprets, operates or otherwise performs a rendering application 150-1and a rendering process 150-2 configured in accordance with embodimentsof the invention. The computer system 110 may be any type ofcomputerized device such as a personal computer, workstation, portablecomputing device (e.g. cell phone, personal digital assistant, etc.),console, laptop, network terminal or the like. As shown in this example,the computer system 110 includes an interconnection mechanism 111 suchas a data bus, motherboard or other circuitry that couples a memory 112,a processor 113, an input/output interface 114, and a communicationsinterface 115. Input device 116 couples to the computer system 110 andprocessor 113 through an input/output (I/O) interface 114 and enables auser 108 to provide input signals and generally control a graphical userinterface 160 that a rendering application 150-1 and rendering process150-2 generates on the computer display 130. The communicationsinterface 115 enables the computer system 110 to communicate with otherdevices (i.e., other computers) on a network such as the Internet 101such as server(s) 102.

The memory 112 is any type of computer readable medium (e.g., RAM, ROM,etc.) and in this example is encoded with an rendering application 150-1that provides software code that supports generation, display, andimplementation of functional operations as explained herein. Therendering application 150-1 may be embodied as software code such asdata and/or logic instructions (e.g., code stored in the memory or onanother computer readable medium such as a removable disk) that supportsprocessing functionality according to different embodiments describedherein. During operation of the computer system 110, the processor 113accesses the memory 112 via the interconnect 111 in order to launch,run, execute, interpret or otherwise perform the logic instructions ofthe rendering application 150-1. Execution of rendering application150-1 in this manner produces processing functionality in a renderingprocess 150-2. In other words, the process 150-2 represents one or moreportions or runtime instances of the rendering application 150-1 (or theentire application 150-1) performing or executing within or upon theprocessor 113 in the computerized device 110 at runtime. The termrendering application 150 as used herein is to be understood to refer toeither or both of the rendering application 150-1 (as code in memory) orthe rendering process 150-2 (the executing version of this code).

Generally, when the rendering application 150 is operating, a user 108controls the rendering application 150 to subscribe to one of morestreaming data feeds or channels 199-1 through 199-X provided by one ormore servers 102. The graphical user interface 160 shows the channels199-1 through 199-X that the user in this example has subscribed to. Thestreaming data feeds 199 (i.e., each channel) may be RSS feeds, forexample, and each represents a channel and contains an encoding of a setof content items 175 available from that channel. During operation, therendering application 150 presents the graphical user interface 160 inthe display 130 of the computerized device 110 and displays each contentitem 175-1 through 175-M for the selected channel 199-2. In thisexample, the rendering application 150 is an RSS-aware streaming datafeed aggregator. The user 108 has thus configured this example RSSapplication 150 to subscribe to several channels 199-1 through 199-X(only a few have reference numerals shown by way of example only) asshown in the channel selection display region 171 of the graphicaldisplay 160. In this example graphical user interface 160 as shown inFIG. 1 (and as shown in more detail in FIG. 2), the user 108 hasselected channel 199-2 entitled “Media Corp” and in response, therendering application 150 has obtained the RSS data format (exampleshown below) for that channel 199-2 which identifies many content items175-1 through 175-M in the content item selection region 172. Also inthis example, the user 108 has selected content item 175-2 in response,the rendering application 150 presents (i.e., plays) the content 176 (avideo in this example) associated with that content item 175-2 in thecontent presentation display region 173 of the graphical user interface160. FIG. 2 is an enlarged view of the graphical user interface 160 inFIG. 1.

An example RSS XML streaming data feed format for channel 199-2 as shownin the graphical user interface 160 in FIGS. 1 and 2, including theembedded modification extensions (i.e., branding extensions) disclosedherein, is shown as follows:

<rss version=“2.0” xmlns:media=“http://search.yahoo.com/mrss”

xmlns:itunes=“http://www.itunes.com/dtds/podcast-1.0.dtd”

500: xmins:branding=“http://www.adobe.com/2006/branding/”>

<channel>

<title>MediaCorp</title>

<link>http://www.MediaCorp.com/viog/</link>

<description>Daily with Jeannine Clark</description>

<copyright>Copyright 2006</copyright>

<lastBuildDate>Fri, 6 Oct 2006 08:27:28-0500</lastBuildDate>

501: <branding:backgroundImageurl=“http://www.MediaCorp.com/background.jpg”/>

<image>

<url>http://10.132.64.127/feeds/MediaCorp/images/MediaCorp_logo.jpg</url

>

<title>MediaCorp</title>

<link>http://www.MediaCorp.com</link>

</image>

<item>

<title>MediaCorp Oct 05 2006</title>

<description>

story link: MediaCorp tour.

</description>

<link>http://www.MediaCorp.com/vlog/archives/2006/10/111</link>

<guid>http://www.MediaCorp.com/vlog/archives/2006/10/111</guid>

<category>daily</category>

<pubDate>Thu, 5 Oct 2006 12:21:30-0500</pubDate>

<enclosure

url=“http://10.132.64.127/feeds/MediaCorp/MediaCorp_(—)10-5-06.flv”

length=“10000”

type=“video/x-flv”/>

<media:group>

<media:content

url=“http://10.132.64.127/feeds/MediaCorp/MediaCorp_(—)10-5-06.flv”

type=“video/x-flv” is Default=“true” expression=“full”/>

</media:group>

<media:title>MediaCorp Oct 05 2006</media:title>

<media:thumbnail

url=“http://10.132.64.127/feeds/MediaCorp/images/MediaCorp_thumb_(—)10_(—)5.jp

g”/>

</item>

<item>

<title>MediaCorp Oct 04 2006</title>

<description>

Field correspondent Joe interviews at college campus

</description>

<link>http://www.MediaCorp.com/viog/archives/2006/10/112</link>

<guid>http://www.MediaCorp.com/vlog/archives/2006/10/112</guid>

<category>daily</category>

<pubDate>Wed, 4 Oct 2006 16:38:52-0500</pubDate>

<enclosure

url=“http://110.132.64.127/feeds/MediaCorp/MediaCorp_(—)10-04-06.flv”

length=“10000” type=“video/x-flv”/>

<media:group>

<media:content

url=“http://10.132.64.127/feeds/MediaCorp/MediaCorp_(—)10-04-06.flv”

type=“video/x-flv” is Default=“true” expression=“full”/>

</media:group>

<media:title>MediaCorp Oct 04 2006</media:title>

<media:thumbnail

url=“http://10.132.64.127/feeds/MediaCorp/images/MediaCorp_thumb_(—)10_(—)4.jp

g”/>

</item>

</channel>

</rss>

Those skilled in the art will recognize most of above data format asstandard RSS 2.0 data format. However, note that in the above example,numeric references 500 and 501 (shown underlined and in bold above)designate additional embedded modification information or brandingextensions in the content (i.e. in the RSS data format) that is providedby embodiments disclosed herein and that serves to reference brandingcontent for this channel. In particular, reference line 500 defines abranding namespace for and reference line 501 defines a brandingextension (a namespace and tag and URL reference) that specifies acertain background image that is to be used by the rendering application150 when the user of the display 160 selects this channel 199-2. Theresulting effect of these branding extensions 500 and 501 are shown inthe example graphical user interface 160 in FIGS. 1 and 2 as the “MediaCorp.” title bar 178 and as a color change applied to the borders 179between the display regions 171, 172 and 173 of the graphical userinterface 160. In other words, the branding extensions 500 and 501 inthis simple example allow the rendering application 150 to interpretthis information and alter the entire background image shown by therendering application 150 on the graphical user interface 160 (i.e. animage shown behind the display regions 171, 172 and 173) to conform tothe image specified by the URL at branding extension reference 501 whenthe user 108 operates the rendering application 150 to select the “MediaCorp” channel 199-2 having the above RSS data format including theexample branding extensions 500 and 501.

FIG. 3 illustrates another graphical user interface 160 for a differentselected channel 199. In the example in FIG. 3, the streaming data feed199-2 (i.e. the data format) for the selected channel includes brandingextensions 500 and 501 similar to those of the interface in FIG. 1,except that the branding extension 501 for the channel 199-1 referencedifferent branding content as a background image and have differentcolors in the regions 171, 172 and 173. Thus, the graphical userinterface 160 in FIG. 2 has a “Google Video Movie Previews” backgroundimage and color scheme that provides a look and feel, or a “brand” forthis channel when that channel is selected in the graphical userinterface 160. Note that Google is a registered trademark of GoogleInc., of Mountain View, Calif., USA.

While the example branding extension shown in the data format abovemodified a background image, other areas of the graphical user interfacecan be modified by branding extensions corresponding to this areas. Asan example, branding extensions can exist in the data format of achannel 199 for modifying the look and feel (e.g. style and/or skin) ofvarious interface properties. Example button properties for whichbranding extensions can exist to modify the look and feel of buttons caninclude border colors, colors, fill colors/alphas, highlight alphas,focus rectangles, fonts, padding, horizontal and vertical gaps, and textalignment. Panel or window properties for which branding extensions canexist include, for example, background colors and alphas, backgroundimages in absolute or relative URL formats (as in the example), bordercolor/style/thickness, corner radius settings, fonts, padding,transparency of modal dialogs, horizontal and vertical alignment ofsub-controls, scroll bar appearance, drop shadows, and so forth. It isunderstood that this list is not meant to be limiting of the types ofinterface components that can be adjusted or modified in response todetecting branding extensions. Also note that branding extensions canapply branding content to small or large portions, regions or subsets ofthe graphical user interface 160, or to the entire graphical userinterface 160.

Further details of configurations explained herein will now be providedwith respect to a flow chart of processing steps that show theoperations of embodiments disclosed herein by a rendering application150 such as an RSS aggregator or other RSS-aware program.

FIG. 4 is a flow chart of processing steps that shows processingperformed by a rendering application 150 in accordance with exampleembodiments disclosed herein.

In step 200, the rendering application 150 obtains content 199 (e.g., anRSS feed) for presentation to a user 108. As explained above, thecontent 199 may be, for example, channel data 199 defined in a streamingdata feed format such as RSS. Sub-step 201 shows further details ofprocessing.

In sub-step 201, the rendering application 150 receives a set ofstreaming data feed(s) 199, such as RSS feeds 199 (i.e., channels) asshown in FIG. 1. Each streaming data feed 199 in the set of streamingdata feeds is arranged in a syndicated markup language format such asRSS or a variant or equivalent thereof that identifies content items 175available for selection and viewing by a user 108 of the application150. The above example data format shows an example of the contentobtained for presentation to the user via the graphical user interface160.

In step 202, the rendering application 150 detects, within the content199, embedded modification information 500, 501 that identifiesgraphical modifications to be made to displayed portions (e.g. regions171, 172, 173, 178, etc.) of the application 150 that are separate froma content presentation region 176 of the application. In oneconfiguration, the rendering application 150 detects at least onebranding extension 501 within the content. The branding extension 501includes a branding content reference (e.g. a URL) to branding content(e.g. a picture or other graphic) accessible via a remote computersystem (e.g. via the server referenced in the URL). The branding contentis displayable within one or more regions (e.g. the background of theentire application in the example graphical user interface 160 in FIGS.1 through 3) of the application 150 and these region(s) are initiallyrendered with content from the application itself (e.g. they areoriginally a default setting that is different from the brandingcontent).

In other words, prior to channel selection (or if no branding extensionsare present in formerly selected channels), the background is initiallyset to whatever the application default background is. However, when thebranding extensions are received, the extensions 500, 501 modify theapplication behavior to cause the background image to switch to theimage specified in the branding extension in the RSS data feed 199-2 forthe example in FIGS. 1 and 2. The branding extensions can exist at thechannel level, or on a content item by content item basis within thechannel data. Thus, if a user selects a content item, the branding canchange to reflect something about that content item. The brandingcontent thus changes as a user selects different content or differentstreaming data feeds or channels (or content items within thosechannels) since each RSS feed for each channel (and optionally for eachcontent item within a channel) can specify different brandingextensions.

It is to be understood that the branding extensions that modify thebackground image in the above example are shown a way of example only inthat many other aspects of the application 150 may be modified bybranding extensions other than the background image alone. As anexample, particular display regions 171, 172 and 173 can be selectivelyreferenced by separate branding extensions within a single RSS streamingdata feed such that different graphical modifications are made to eachof these areas separately. Branding extensions can be developed andincluded in channel data to very precisely define how different aspectsof the application are presented and how they are to operate. Thusbranding extensions not only can be used to control the look and feel ofthe application 150, they can also govern application functionality.Sub-steps 203 and 204 show details of detecting branding extensions inthe streaming data feed content 199 in one example configuration.

In sub-step 203, the rendering application 150 identifies the embeddedmodification information as branding extensions 500, 501 within at leastone streaming data feed 199. In one configuration, each brandingextension for a streaming data feed includes i) a branding tag 501providing an identification of a display region (e.g. background image)of the application to which branding content associated with thatbranding extension is to be applied; and ii) a branding contentreference (e.g. URL or other reference) to branding content (e.g. a jpegimage, color, or other marking) that can be displayed in the identifieddisplay region (the background in this example) of the application inresponse to the application receiving a selection from the user 108 toview content associated with that streaming data feed 199-2. It is to beunderstood that the branding content reference can reference any type ofbranding content, including an image, a color or color scheme, a webpage (e.g. a page to display as background), a video, or audio data andso forth.

In sub-step 204, the rendering application 150 identifies at least onebranding extension encoded within the streaming data feed thatidentifies branding content to be displayed in a display region of theapplication that may include, for example, one or more of the following:i) an application window border display region 179 that surrounds theapplication; ii) a channel presentation display region 171 of theapplication in which the streaming data feed(s) 199 may be selected as achannel from a plurality of streaming data feeds; iii) a content itemselection display region 172 of the application that indicates contentitems associated with a selected channel for a streaming data feed thatthe user may select for viewing; iv) an application control displayregion 174 that displays controls operable to control the application;and/or v) a background image display region in which the application candisplay a background image identified by the branding content.

In step 205, the rendering application 150 references the embeddedmodification information (i.e. the branding extensions 500 and 501)within the content 199 to obtain the graphical modifications to be madeto display regions of the application that are separate from the contentpresentation region 176 of the application. Sub-steps 206 through 209show details of this processing.

In step 206, for each streaming data feed 199 received by theapplication 150 that includes at least one branding extension 500, 501,the rendering application 150 accesses the branding content reference(i.e. the URL) to the branding content included in that brandingextension 501 for that streaming data feed 199 to obtain and cache thebranding content in association with the identification of the displayportion (i.e., which part of the graphical user interface that extensionis to be applied) of the application to which that branding extension isto be applied for that streaming data feed 199, prior to receiving aselection from the user to view content associated with that streamingdata feed. In this manner, the branding data (e.g. the backgroundcontent 178 in FIGS. 1, 2 and 3) can be retrieved and cached for futureuse prior to the user selecting the channel 199. In other words, oncethe rendering application 150 has been configured by the user 108 withdata about which channels 199 that user is interested in, the renderingapplication can obtain the channel data 199 before the user actuallyselects a particular channel 199-1, 199-2 and so forth in the graphicaluser interface 160. Since the channel data is obtained beforehand, so toare the branding extensions and the branding content can also bepre-fetched so that when a user selects a channel 199 in the graphicaluser interface 160, the appropriate branding content 178 will be readilyavailable.

In an alternative configuration, the branding content is re-obtainedeach time a user 108 re-selects a channel 199. This may be important ifthe branding content referenced by the branding extension 501 is dynamicand changes over time. Thus if the user selects channel 199-2 a firsttime, the rendering application 150 may be present the user 108 with thebranding content 178 as shown in FIGS. 1 and 2. However, if the userre-selects this channel 199-2 a second time a few moments later, therendering application can be configured to again obtain the brandingcontent that may have changed. Step 207 through 209 show details of howthe branding content is retrieved based on branding extensions 500 and501.

In step 207, the rendering application 150 identifies a brandingextension namespace (e.g. 500 in the above data format example) encodedinto the streaming data feed 199. The branding extension namespaceidentifies a document type definition that defines branding tagsassociated with branding extensions.

In step 208, the rendering application 150 detects a branding tag 501 inthe streaming data feed 199. The branding tag 501 provides anidentification of a display region (e.g. background image in thisexample) of the application to which branding content 178 associatedwith (i.e. to be obtain with) a branding content reference assigned tothat branding tag is to be applied. In other words, the application 150can interpret the tag to determine what part of the display is to beeffected by the branding content once it is obtained. Thus the tag canbe associated to a particular part of the graphical user interface 160of the rendering application 150. In a given channel 199 data format,there may be several branding extensions that each customize or modify aparticular port of the graphical user interface that the application 150renders. There can be branding extensions for many different applicationdisplay regions, as well as for application controls, and even tospecify certain application features that are to be enabled or disabled.In this manner, the branding extensions allow a content provider theability to dictate how the content items for a channel are to bepresented to the user.

In step 209, in response to detecting the branding tag 501, therendering application 150 obtains branding content (e.g. the backgroundimage) referenced by the branding content reference (e.g. url) assignedto that branding tag contained in the streaming data feed 199. Thebranding content is to be displayed in a display region (e.g.background, or some subset of the graphical user interface) of theapplication 150 corresponding to the branding tag in response to theapplication 150 receiving a selection from the user to view contentidentified in the streaming data feed 199 for which that that brandingtag is associated. The selection from the user that triggers thebranding content to be obtained and applied can be, for example, theuser's selection of a channel 199, or selection of a particular contentitem 175 within a channel.

In one configuration, the embedded modification information is abranding extension in a streaming data feed that includes a brandingcontent reference to a new application skin that will replace a currentapplication skin upon user selection of content associated with astreaming data feed containing the content for presentation to a user.In such cases, the branding extensions allow the application skin todynamically change as a user selects different channels 199 or contentitems 175 within a channel. Steps 210 through 212 provide exampleprocessing to dynamically change application skin based on userselections of content or channels.

In step 210 the rendering application 150 accesses the branding contentreference (e.g. a url to a new skin file) to load a wrapper file 167containing the new application skin. The wrapper file 167 encodesapplication skin characteristics, such as border shape and color, buttonand control characteristics, font sizes, and so forth.

In step 211, the rendering application 150 retrieves and instantiates askin class (in memory 112) within the newly loaded application skin 167to access embedded skinning symbols within the skin class 167.

In step 212, the rendering application 150 applies a style defined inthe skin class 167 to invoke display of the embedded skinning symbolswithin the skin class on a display region of the applicationcorresponding to a branding tag defined in the branding extension. Inthis manner, the skin of the application dynamically changes to a newskin 167 as the user changes channels. This is shown by the differentlook and feel or the graphical user interface 160 in FIGS. 2, 3 and 4.

In another configuration, application styles can be dynamically changedand the embedded modification information is a branding extension in astreaming data feed 199 that includes a branding content reference to anapplication style 168 that will replace a current application style uponuser selection of content associated with a streaming data feedcontaining the content for presentation to a user. In such cases, thebranding extensions allow the application style to change as a userselects different channels or content items. Steps 213 through 215provide example processing to dynamically change application style basedon user selections of content or channels.

In step 213, the rendering application 150 accesses the branding contentreference 501 to download a branding stylesheet 168 associated with thestreaming data feed 199 that is associated with content selected forpresentation to the user 108.

In step 214, the rendering application 150 parses the brandingstylesheet 168 to identify brandable application classes associated withdisplay items rendered by the application.

In step 215, the rendering application 150 operates a style manager toapply the branding style 168 defined in the branding style sheetassociated with the content selected to each brandable application classso that display regions (e.g., 171, 172, 173, 178, etc.) correspondingto the brandable application classes adapt to the branding style definedin the branding stylesheet 168.

In step 216, the rendering application 150 alters at least one displayregion (e.g., 171, 172, 173, 178, etc.) of the application that isseparate from the content display region 176 of the application inaccordance with the graphical modifications 500, 501 identified by theembedded modification information within the content 199. Sub-steps 217through 219 show details of this processing.

In step 217, the rendering application 150 detects a user selection of acontent choice 199 or 175 associated with a streaming data feed 199within a graphical region of the application. The branding extensionscan thus be provided on a channel by channel basis, or more granularlyon a content item by content item approach, such that as the userselects different content items 175 in the same channel, the brandingchanges.

In step 218, in response, the rendering application 150 determines ifbranding content (e.g. extensions) associated with the content choice isavailable for display.

In step 219, if branding content associated with the content choice 199or 175 is available for display, the rendering application 150 displaysthe branding content in a display region (e.g., 171, 172, 173, 178,etc.) identified by the branding tag 501 of the branding extensionassociated to that streaming data feed 199 containing the content choice175. The display region (e.g., 171, 172, 173, 178, etc.) in which thebranding content is displayed is different than a content display region176 of the application in which content associated with the contentchoice is to be displayed. In this manner, the branding extensions 500,501 modify application operation and serve as an in-band controlmechanism for application visual appearance and functionality.

While this invention has been particularly shown and described withreferences to preferred embodiments thereof, it will be understood bythose skilled in the art that various changes in form and details may bemade therein without departing from the spirit and scope of the presentapplication as defined by the appended claims. Such variations areintended to be covered by the scope of this present application. Assuch, the foregoing description of embodiments of the presentapplication is not intended to be limiting. Rather, any limitations tothe invention are presented in the following claims.

1. A computer-implemented method comprising: obtaining content forpresentation, wherein obtaining content includes receiving a set ofstreaming data feeds; detecting, within at least one of the streamingdata feeds, embedded modification information that identifies graphicalmodifications to be made to at least one displayed portion, thedisplayed portion being: (i) initially rendered with applicationcontent; (ii) separate from at least one content presentation region ofthe application, the content presentation region for display of at leastone content item defined within feed data; referencing the embeddedmodification information within the content to obtain the graphicalmodifications to be made to display regions of the application that areseparate from the content presentation region of the application; andaltering at least one display region of the application that is separatefrom the content display region of the application in accordance withthe graphical modifications identified by the embedded modificationinformation within the content, wherein the steps of obtaining,detecting, referencing and altering are performed by at least onetangible computer device; wherein receiving the set of streaming datafeeds includes: receiving a first streaming data feed associated with afirst channel of content items: receiving a second streaming data feedassociated with a second channel of content items; wherein detectingembedded modification information includes: identifying a first brandingextension encoded within the first streaming data feed that identifies afirst application skin to be applied to the displayed portion that isseparate from the content presentation region of the application upondetecting a selection of the first channel: and identifying a secondbranding extension encoded within the second streaming data feed thatidentifies a second application skin to be applied to the displayedportion that is separate from the content presentation region of theapplication upon detecting a selection of the second channel.
 2. Thecomputer-implemented method of claim 1 wherein obtaining content forpresentation comprises: receiving the set of streaming data feeds, eachstreaming data feed in the set of streaming data feeds arranged in asyndicated markup language format that identifies content itemsavailable for selection and viewing.
 3. The computer-implemented methodof claim 2 wherein detecting, within the content, embedded modificationinformation that identifies graphical modifications to be made todisplay regions of the application that are separate from a contentpresentation region of the application comprises: identifying theembedded modification information as branding extensions within at leastone streaming data feed, each branding extension for a streaming datafeed including: 1) a branding tag providing an identification of adisplay region of the application to which branding content associatedwith that branding extension is to be applied; 2) a branding contentreference to branding content that can be displayed in the identifieddisplay region of the application in response to the applicationreceiving a selection from the user to view content associated with thatstreaming data feed.
 4. The computer-implemented method of claim 3wherein referencing the embedded modification information within thecontent to obtain the graphical modifications to be made to displayedportions of the application that are separate from the contentpresentation region of the application comprises: for each streamingdata feed received by the application that includes at least onebranding extension, accessing the branding content reference to thebranding content included in that branding extension for that streamingdata feed to obtain and cache the branding content in association withthe identification of the display portion of the application to whichthat branding extension is to be applied for that streaming data feed,prior to receiving a selection to view content associated with thatstreaming data feed.
 5. The computer-implemented method of claim 3,wherein identifying the embedded modification information as brandingextensions within at least one streaming data feed comprises:identifying a first branding reference encoded within a first streamingdata feed, the first branding reference referencing first brandingcontent that modifies an appearance of an application interface controlupon receiving a selection to view a channel associated with the firststreaming data feed, the application interface control located withinthe display region of the application, the application interface controlincluded in the initially rendered application content.
 6. Thecomputer-implemented method of claim 3 wherein identifying the embeddedmodification information as branding extensions within at least onestreaming data feed comprises: identifying at least one brandingextension encoded within the streaming data feed that identifiesbranding content to be displayed in a display region of the application,the display region including at least one of: i) an application windowborder display region that surrounds the application; ii) a channelpresentation display region of the application in which the streamingdata feed may be selected as a channel from a plurality of streamingdata feeds; iii) a content item selection display region of theapplication that indicates content items associated with a selectedchannel for a streaming data feed selectable for viewing; and iv) anapplication control display region that displays controls operable tocontrol the application; and v) a background image display region inwhich the application can display a background image identified by thebranding content.
 7. The computer-implemented method of claim 6, whereinidentifying at least one branding extension encoded within the streamingdata feed includes: identifying a first branding extension thatidentifies a new application skin to surround content presentationregions displaying content items defined within feed data, the newapplication skin provided by a content producer of a content item in thefeed data.
 8. The computer-implemented method of claim 2 whereinreferencing the embedded modification information within the content toobtain the graphical modifications to be made to displayed portions ofthe application that are separate from the content presentation regionof the application comprises: identifying a branding extension namespaceencoded into the streaming data feed, the branding extension namespaceidentifying a document type definition that defines branding tagsassociated with branding extensions; detecting a branding tag in thestreaming data feed, the branding tag providing an identification of adisplay region of the application to which branding content associatedwith a branding content reference assigned to that branding tag is to beapplied; in response to detecting the branding tag, obtaining brandingcontent referenced by the branding content reference assigned to thatbranding tag contained in the streaming data feed, the branding contentto be displayed in a display region of the application corresponding tothe branding tag in response to the application receiving a selection toview content identified in the streaming data feed for which that thatbranding tag is associated.
 9. The computer-implemented method of claim8 wherein altering at least one display region of the application thatis separate from the content display region of the application inaccordance with the graphical modifications identified by the embeddedmodification information within the content comprises: detecting aselection of a content choice associated with a streaming data feedwithin a graphical region of the application; in response, determiningif branding content associated with the content choice is available fordisplay; if branding content associated with the content choice isavailable for display, displaying the branding content in a displayregion identified by the branding tag of the branding extensionassociated to that streaming data feed containing the content choice,the display region in which the branding content is displayed beingdifferent than a content display region of the application in whichcontent associated with the content choice is to be displayed.
 10. Thecomputer-implemented method of claim 1 wherein detecting, within thecontent, embedded modification information that identifies graphicalmodifications to be made to displayed portions of the application thatare separate from a content presentation region of the applicationcomprises: detecting at least one branding extension within the content,the branding extension including a branding content reference tobranding content accessible via a remote computer system, the brandingcontent being displayable within at least one region of the applicationthat is initially rendered with content from the application itself. 11.The computer-implemented method of claim 1 wherein the embeddedmodification information is a branding extension in a streaming datafeed that includes a branding content reference to a new applicationskin that will replace a current application skin upon receiving aselection of content associated with a streaming data feed containingthe content for presentation; and wherein referencing the embeddedmodification information within the content to obtain the graphicalmodifications to be made to display regions of the application that areseparate from the content presentation region of the applicationcomprises: accessing the branding content reference to load a wrapperfile containing the new application skin; retrieving and instantiating askin class within the newly loaded application skin to access embeddedskinning symbols within the skin class; applying a style defined in theskin class to invoke display of the embedded skinning symbols within theskin class on a display region of the application corresponding to abranding tag defined in the branding extension.
 12. Thecomputer-implemented method of claim 1 wherein the embedded modificationinformation is a branding extension in a streaming data feed thatincludes a branding content reference to an application style that willreplace a current application style upon receiving a selection ofcontent associated with a streaming data feed containing the content forpresentation to a user; and wherein referencing the embeddedmodification information within the content to obtain the graphicalmodifications to be made to display regions of the application that areseparate from the content presentation region of the applicationcomprises: accessing the branding content reference to download abranding stylesheet associated with the streaming data feed that isassociated with content selected for presentation; parsing the brandingstylesheet to identify brandable application classes associated withdisplay items rendered by the application; operating a style manager toapply the branding style defined in the branding style sheet associatedwith the content selected to each brandable application class so thatdisplay regions corresponding to the brandable application classes adaptto the branding style defined in the branding stylesheet.
 13. Thecomputer-implemented method of claim 1, wherein altering the at leastone display region of the application includes: upon detecting theselection of the first channel, applying the first application skin tothe displayed portion as the content presentation region concurrentlypresents at least one content item of the first streaming data feed;while the first application skin is applied to the application,detecting the selection of the second channel; and upon detecting theselection of the second channel, replacing the first application skin byapplying the second application skin to the displayed portion as thecontent presentation region concurrently presents at least one contentitem of the second streaming data feed.
 14. The computer-implementedmethod of claim 1, comprising: wherein receiving the set of streamingdata feeds includes: receiving multiple streaming data feeds, eachstreaming data feed providing access to a plurality of content itemscorresponding to a unique channel; wherein detecting embeddedmodification information includes selecting one from the groupconsisting of: (i) detecting first embedded modification informationdefined to disable at least one application control upon receiving aselection to view a content item from one of the streaming data feeds;and (ii) detecting second embedded modification information defined toenable the application control upon receiving the selection to view thecontent item from one of the streaming data feeds.
 15. A computerprogram product including a computer-readable medium having instructionsstored thereon for processing data information, such that theinstructions, when carried out by a processing device, enable theprocessing device to perform the operations of: obtaining content forpresentation, wherein obtaining content includes receiving a set ofstreaming data feeds; detecting, within at least one of the streamingdata feeds, embedded modification information that identifies graphicalmodifications to be made to at least one displayed portion, thedisplayed portion being: (i) initially rendered with applicationcontent; (ii) separate from at least one content presentation region ofthe application, the content presentation region for display of at leastone content item defined within feed data; referencing the embeddedmodification information within the content to obtain the graphicalmodifications to be made to display regions of the application that areseparate from the content presentation region of the application; andaltering at least one display region of the application that is separatefrom the content display region of the application in accordance withthe graphical modifications identified by the embedded modificationinformation within the content: wherein receiving the set of streamingdata feeds includes: receiving a first streaming data feed associatedwith a first channel of content items: receiving a second streaming datafeed associated with a second channel of content items; whereindetecting embedded modification information includes: identifying afirst branding extension encoded within the first streaming data feedthat identifies a first application skin to be applied to the displayedportion that is separate from the content presentation region of theapplication upon detecting a selection of the first channel; andidentifying a second branding extension encoded within the secondstreaming data feed that identifies a second application skin to beapplied to the displayed portion that is separate from the contentpresentation region of the application upon detecting a selection of thesecond channel.
 16. The computer program product of claim 15 whereinobtaining content for presentation comprises: receiving the set ofstreaming data feeds, each streaming data feed in the set of streamingdata feeds arranged in a syndicated markup language format thatidentifies content items available for selection and viewing.
 17. Thecomputer program product of claim 16 wherein detecting, within thecontent, embedded modification information that identifies graphicalmodifications to be made to display regions of the application that areseparate from a content presentation region of the applicationcomprises: identifying the embedded modification information as brandingextensions within at least one streaming data feed, each brandingextension for a streaming data feed including: 1) a branding tagproviding an identification of a display region of the application towhich branding content associated with that branding extension is to beapplied; 2) a branding content reference to branding content that can bedisplayed in the identified display region of the application inresponse to the application receiving a selection to view contentassociated with that streaming data feed.
 18. The computer programproduct of claim 17 wherein identifying the embedded modificationinformation as branding extensions within at least one streaming datafeed comprises: identifying at least one branding extension encodedwithin the streaming data feed that identifies branding content to bedisplayed in a display region of the application, the display regionincluding at least one of: i) an application window border displayregion that surrounds the application; ii) a channel presentationdisplay region of the application in which the streaming data feed maybe selected as a channel from a plurality of streaming data feeds; iii)a content item selection display region of the application thatindicates content items associated with a selected channel for astreaming data feed selectable for viewing; and iv) an applicationcontrol display region that displays controls operable to control theapplication; and v) a background image display region in which theapplication can display a background image identified by the brandingcontent.
 19. The computer program product of claim 17 whereinreferencing the embedded modification information within the content toobtain the graphical modifications to be made to displayed portions ofthe application that are separate from the content presentation regionof the application comprises: for each streaming data feed received bythe application that includes at least one branding extension, accessingthe branding content reference to the branding content included in thatbranding extension for that streaming data feed to obtain and cache thebranding content in association with the identification of the displayportion of the application to which that branding extension is to beapplied for that streaming data feed, prior to receiving a selection toview content associated with that streaming data feed.
 20. The computerprogram product of claim 16 wherein referencing the embeddedmodification information within the content to obtain the graphicalmodifications to be made to displayed portions of the application thatare separate from the content presentation region of the applicationcomprises: identifying a branding extension namespace encoded into thestreaming data feed, the branding extension namespace identifying adocument type definition that defines branding tags associated withbranding extensions; detecting a branding tag in the streaming datafeed, the branding tag providing an identification of a display regionof the application to which branding content associated with a brandingcontent reference assigned to that branding tag is to be applied; inresponse to detecting the branding tag, obtaining branding contentreferenced by the branding content reference assigned to that brandingtag contained in the streaming data feed, the branding content to bedisplayed in a display region of the application corresponding to thebranding tag in response to the application receiving a selection toview content identified in the streaming data feed for which that thatbranding tag is associated.
 21. The computer program product of claim 20wherein altering at least one display region of the application that isseparate from the content display region of the application inaccordance with the graphical modifications identified by the embeddedmodification information within the content comprises: detecting aselection of a content choice associated with a streaming data feedwithin a graphical region of the application; in response, determiningif branding content associated with the content choice is available fordisplay; if branding content associated with the content choice isavailable for display, displaying the branding content in a displayregion identified by the branding tag of the branding extensionassociated to that streaming data feed containing the content choice,the display region in which the branding content is displayed beingdifferent that a content display region of the application in whichcontent associated with the content choice is to be displayed.
 22. Thecomputer program product of claim 15 wherein detecting, within thecontent, embedded modification information that identifies graphicalmodifications to be made to displayed portions of the application thatare separate from a content presentation region of the applicationcomprises: detecting at least one branding extension within the content,the branding extension including a branding content reference tobranding content accessible via a remote computer system, the brandingcontent being displayable within at least one region of the applicationthat is initially rendered with content from the application itself. 23.The computer program product of claim 15 wherein the embeddedmodification information is a branding extension in a streaming datafeed that includes a branding content reference to a new applicationskin that will replace a current application skin upon receiving aselection of content associated with a streaming data feed containingthe content for presentation; and wherein referencing the embeddedmodification information within the content to obtain the graphicalmodifications to be made to display regions of the application that areseparate from the content presentation region of the applicationcomprises: accessing the branding content reference to load a wrapperfile containing the new application skin; retrieving and instantiating askin class within the newly loaded application skin to access embeddedskinning symbols within the skin class; applying a style defined in theskin class to invoke display of the embedded skinning symbols within theskin class on a display region of the application corresponding to abranding tag defined in the branding extension.
 24. The computer programproduct of claim 15 wherein the embedded modification information is abranding extension in a streaming data feed that includes a brandingcontent reference to an application style that will replace a currentapplication style upon receiving a selection of content associated witha streaming data feed containing the content for presentation; andwherein referencing the embedded modification information within thecontent to obtain the graphical modifications to be made to displayregions of the application that are separate from the contentpresentation region of the application comprises: accessing the brandingcontent reference to download a branding stylesheet associated with thestreaming data feed that is associated with content selected forpresentation; parsing the branding stylesheet to identify brandableapplication classes associated with display items rendered by theapplication; operating a style manager to apply the branding styledefined in the branding style sheet associated with the content selectedto each brandable application class so that display regionscorresponding to the brandable application classes adapt to the brandingstyle defined in the branding stylesheet.
 25. A computerized devicecomprising: a processor; a communications interface; a display; a memorythat stores instructions associated with a rendering applicationexecuted by the processor; and an interconnect coupling the processor,the memory unit, the display and the communications interface, enablingthe processor in the computerized device to execute the renderingapplication as a process and perform operations of: obtaining contentfor presentation, wherein obtaining content includes receiving a set ofstreaming data feeds; detecting, within at least one of the streamingdata feeds, embedded modification information that identifies graphicalmodifications to be made to at least one displayed portion, thedisplayed portion being: (i) initially rendered with applicationcontent; (ii) separate from at least one content presentation region ofthe application, the content presentation region for display of at leastone content item defined within feed data; referencing the embeddedmodification information within the content to obtain the graphicalmodifications to be made to display regions of the application that areseparate from the content presentation region of the application; andaltering at least one display region of the application that is separatefrom the content display region of the application in accordance withthe graphical modifications identified by the embedded modificationinformation within the content: wherein receiving the set of streamingdata feeds includes: receiving a first streaming data feed associatedwith a first channel of content items: receiving a second streaming datafeed associated with a second channel of content items; whereindetecting embedded modification information includes: identifying afirst branding extension encoded within the first streaming data feedthat identifies a first application skin to be applied to the displayedportion that is separate from the content presentation region of theapplication upon detecting a selection of the first channel; andidentifying a second branding extension encoded within the secondstreaming data feed that identifies a second application skin to beapplied to the displayed portion that is separate from the contentpresentation region of the application upon detecting a selection of thesecond channel.
 26. A method for dynamically changing the appearance ofan application, the method comprising: obtaining feed data forpresentation, the feed data formatted according to a really simplesyndication (RSS) data format, the feed data comprising: a firststreaming data feed associated with a first channel of content items anda second streaming data feed associated with a second channel of contentitems; detecting, within the feed data, branding extensions thatidentify branding content to be displayed concurrently with channel dataand content items upon receiving a selection of a channel defined by thefeed data; detecting a selection of the channel defined by the feeddata, and in response, referencing the branding extensions to obtain anddisplay the branding content within a display region of the applicationthat is (i) initially rendered with application content and (ii)separate from a content presentation region of the application fordisplay of content items defined within the feed data, wherein the stepsof obtaining and detecting are performed by at least one tangiblecomputer device; wherein detecting branding extensions includes:identifying a first branding extension encoded within the firststreaming data feed that identifies a first application skin to beapplied to the displayed portion that is separate from the contentpresentation region of the application upon detecting a selection of thefirst channel: and identifying a second branding extension encodedwithin the second streaming data feed that identifies a secondapplication skin to be applied to the displayed portion that is separatefrom the content presentation region of the application upon detecting aselection of the second channel.
 27. A computer readable medium encodedwith instructions for processing data formatted according to a realsimple syndication (R.S.S.) feed data format, the instructions furtherperforming the operations of: detecting first data provided in at leastone streaming data feed that is formatted according to a channeldefinition of the R.S.S. feed data format, the first data formattedaccording to the channel definition defining channel data to bedisplayed via a rendering application that interprets the R.S.S. feeddata format, wherein detecting first data includes: receiving a firststreaming data feed; and receiving a second streaming data feed;detecting second data provided in the streaming data feed that isformatted according to a content item definition of the R.S.S. feed dataformat, the second data formatted according to the content itemdefinition defining at least one content item associated with thechannel data that is selectable for presentation of that content item bythe rendering application, wherein detecting second data includes:receiving a first channel of content items associated with the firststreaming data feed; and receiving a second channel of content itemsassociated with the second streaming data feed; and detecting third dataprovided in the streaming data feed that is formatted according to abranding extension of the R.S.S. feed data format, the third dataformatted according to the branding extension identifies brandingcontent to be displayed concurrently in regions of a graphical userinterface produced by the rendering application upon receiving selectionof at least one of the channel data and the at least one content item,the regions of the graphical user interface containing the brandingcontent being (i) initially rendered with application content and (ii)different than regions of the display used by the rendering applicationto display the channel data and the at least one content item; whereindetecting third data includes: identifying a first branding extensionencoded within the first streaming data feed that identifies a firstapplication skin to be applied to the displayed portion that is separatefrom the content presentation region of the application upon detecting aselection of the first channel; and identifying a second brandingextension encoded within the second streaming data feed that identifiesa second application skin to be applied to the displayed portion that isseparate from the content presentation region of the application upondetecting a selection of the second channel.